home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Aminet 28
/
Aminet 28 (1998)(GTI - Schatztruhe)[!][Dec 1998].iso
/
Aminet
/
util
/
shell
/
ViNCEd.lha
/
ViNCEd
/
Include
/
vnc
/
window.h
< prev
Wrap
C/C++ Source or Header
|
1998-08-22
|
35KB
|
853 lines
#ifndef VNC_WINDOW_H
#define VNC_WINDOW_H
/*********************************************************
** ViNCEd **
** a DOS - window handler **
** **
** © 1991-98 THOR-Software inc. **
** Version 3.60 **
** **
** program version 3.60 21 Aug 1998 THOR **
** **
** ViNCEd Window: The main structure (ViNCWindow) **
**-----------------------------------------------------**
** **
** all use at your own risk,etc.,etc. **
** **
** Everything declared as "reserved" or **
** "not used" is NOT free for your use, **
** it will propably used in a later release. **
** All FREE entries are free for public **
** use and are, if not otherwise noted, **
** initialized with ZERO **
*********************************************************/
#ifndef EXEC_TYPES_H
#include <exec/types.h>
#endif
#ifndef EXEC_LIBRARIES_H
#include <exec/libraries.h>
#endif
#ifndef EXEC_PORTS_H
#include <exec/ports.h>
#endif
#ifndef EXEC_SEMAPHORES_H
#include <exec/semaphores.h>
#endif
#ifndef EXEC_IO_H
#include <exec/io.h>
#endif
#ifndef EXEC_DEVICES_H
#include <exec/devices.h>
#endif
#ifndef DEVICES_TIMER_H
#include <devices/timer.h>
#endif
#ifndef DEVICES_CONSOLE_H
#include <devices/console.h>
#endif
#ifndef DEVICES_CONUNIT_H
#include <devices/conunit.h>
#endif
#ifndef DEVICES_KEYMAP_H
#include <devices/keymap.h>
#endif
#ifndef GRAPHICS_CLIP_H
#include <graphics/clip.h>
#endif
#ifndef GRAPHICS_GFX_H
#include <graphics/gfx.h>
#endif
#ifndef GRAPHICS_RASTPORT_H
#include <graphics/rastport.h>
#endif
#ifndef GRAPHICS_TEXT_H
#include <graphics/text.h>
#endif
#ifndef UTILITY_TAGITEM_H
#include <utility/tagitem.h>
#endif
#ifndef INTUITION_INTUITION_H
#include <intuition/intuition.h>
#endif
#ifndef INTUITION_SCREENS_H
#include <intuition/screens.h>
#endif
#ifndef DOS_DOS_H
#include <dos/dos.h>
#endif
#ifndef DOS_DOSEXTENS_H
#include <dos/dosextens.h>
#endif
#ifndef WORKBENCH_WORKBENCH_H
#include <workbench/workbench.h>
#endif
#ifndef VNC_VNCBASE_H
#include <vnc/vncbase.h>
#endif
#ifndef VNC_PREFS_H
#include <vnc/prefs.h>
#endif
#ifndef VNC_OWNER_H
#include <vnc/owner.h>
#endif
#ifndef VNC_DYNAMICS_H
#include <vnc/dynamics.h>
#endif
#ifndef VNC_KEYBOARD_H
#include <vnc/keyboard.h>
#endif
/* This is the description of the main structure of ViNCEd, the
ViNCWindow. It is linked to a group of "owners" that share
a common output window. This window is described by this structure */
struct ViNCWindow {
struct ViNCWindow *vcn_succ,*vcn_pred; /* linked list in
library base */
UWORD vcn_Version; /* version information */
UWORD vcn_Revision;
struct SignalSemaphore vcn_Semaphore; /* access grant. DO
NOT TOUCH. Use
LockWindow(),
UnLockWindow()! */
UWORD vcn_OpenCount; /* times DOS Open'd
this. No lock count,
no asyncs here */
/* base pointers */
struct VNCBase *vcn_VNCBase; /* library base */
struct ViUserNode *vcn_UserNode; /* for you. See below*/
/* important flags */
ULONG vcn_Flags;
ULONG vcn_ExtFlags; /* even more */
ULONG vnc_EventFlags; /* received events */
ULONG vcn_DOSFlags; /* much more */
ULONG vcn_RequestedEvents;/* receive which input
events */
/* links to the system */
struct Window *vcn_Window; /* the intuition window,
if open */
struct ViNCNewWindow *vcn_NewWindow; /* temporary for reopen */
struct RastPort *vcn_RastPort; /* private one, for drawing*/
struct Layer *vcn_Layer; /* the layer */
struct Screen *vcn_Screen; /* the screen the window is
displayed on, if open */
struct TmpRas *vcn_TmpRas; /* used to speedup
scrolling */
struct TextFont *vcn_TextFont; /* text used for rendering*/
void *vcn_MemPool; /* ViNCEd's private memory
pool. Do not touch, THIS
IS NOT EXEC COMPATIBLE
Use AllocEdMem(),
FreeEdMem() to make use
of this pool */
struct DosList *vcn_DeviceNode; /* no BPTR! Pointer to
dos device entry */
struct ConUnit *vcn_ConUnit; /* ConUnit for backwards
compatibility. Do not
use this. */
struct KeyMap *vcn_KeyMap; /* used keyboard. This is
a console compatible
keyboard, not the
VNC extensions */
UWORD *vcn_TabStops; /* array of TAB positions*/
/* size of window and font */
UWORD vcn_TXSize;
UWORD vcn_TYSize; /* Size of the font */
UWORD vcn_TBaseLine; /* text base line */
UWORD vcn_TotalCount;/* total open count of
all structures.
The handler is allowed
to leave not until this
is zero */
UWORD vcn_LeftOffset;/* text starting offset
in the window */
UWORD vcn_TopOffset; /* same, but vertical */
UWORD vcn_RightOffset;
UWORD vcn_BottomOffset; /* for mini clipping */
UWORD vcn_Width;
UWORD vcn_Height; /* available area for
drawing in pixels */
UWORD vcn_CWidth;
UWORD vcn_CHeight; /* same in characters */
UWORD vcn_BProtLeft;
UWORD vcn_BProtTop;
UWORD vcn_BPropRight;
UWORD vcn_BPortBottom;
/* border protection
zone, used to avoid
printing of italics
into the border */
UWORD vcn_RightScroll;
UWORD vcn_LeftScroll;/* scrolling margins*/
/* system lists. None of these lists should be used directly. Use the
library functions to modify them. */
struct MinList